package com.generalbackend.common.service;

import com.alibaba.fastjson.JSONObject;
import com.generalbackend.common.model.entity.CommonConfig;
import com.generalbackend.common.model.query.CommonConfigQuery;

/**
* ClassName: CommonConfigQuery
* @Description 业务层
* @author tim.xie
* @date 2021-11-18 13:31
*/


public interface CommonConfigService {

    /**
     * 添加
     * @param commonConfig
     * @return
     */
    Boolean insert(CommonConfig commonConfig);

    /**
     * 修改
     * @param commonConfig
     * @return
     */
    Boolean update(CommonConfig commonConfig);

     /**
     * 根据id删除
     * @param id
     * @return
     */
    Boolean deleteById(String id);

    /**
     * 根据id得到对象
     * @param id
     * @return
     */
    CommonConfig  selectById(String id);

    /**
    * 根据条件查询集合列表
    * @param commonConfigQuery
    * @return
    */
    JSONObject list(CommonConfigQuery commonConfigQuery);

    /**
     * 通过前缀和key查询对应的配置信息
     * @param prefix
     * @param key
     * @return
     */
    CommonConfig getConfigByPrefixAndKey(String prefix,String key);


    /**
     * 通过前缀和key查询对应的配置信息
     * @param prefix
     * @param key
     * @param value
     * @return
     */
    void updateConfigValueByPrefixAndKey(String prefix,String key, String value);

}
